C语言如何使用函数交换两个变量的值 | 您所在的位置:网站首页 › c语言 change › C语言如何使用函数交换两个变量的值 |
函数交换变量值
首先咱们先来看一下平常咱们会想到的一个方法 定义一个临时变量来交换数值 #include #include void swap(int x, int y) { int temp = x; x = y; y = temp; } int main() { int a = 10; int b = 20; printf("before : a = %d b = %d", a, b); swap(a, b); printf("after : a = %d b = %d", a, b); system("pause"); return 0; }然后 咱们来看一下运行的结果: 再来说一下在函数调用过程中,如果有形参,实际是重新开辟出一块内存空间来存储东西的。 接下来画一张图: 现在就可以了 最后附上一个最近写的一到题目:使用递归方法使一个字符串逆序。也是使用指针操作,不过就不是直接操作里面的值了,是改指针的指向。 相信童鞋们也能理解😁😁😁 C语言惊天大bug 数组作为函数参数的时候,会被隐式转换成一个指向首元素的指针 #include #include int myStrlen(char* arr) { //所以这里写成了char*类型也可以写char arr[]哦 if (arr[0] == '\0') { return 0; } return 1 + myStrlen(1 + arr);//递归实现自己的strlen原理差不多 } void reverse_string2(char str[]) { int len = myStrlen(str); char temp = *str; *str = *(str + len - 1); *(str + len - 1) = '\0'; if (myStrlen(str) > 0) { reverse_string2(str + 1); } *(str + len - 1) = temp; } int main() { char arr[] = "abcdfeg"; printf("before:%s\n", arr); reverse_string2(arr); printf("after:%s\n", arr); return 0; } |
CopyRight 2018-2019 实验室设备网 版权所有 |